package com.kmxd.ams.core.common.annotation;

import com.kmxd.ams.core.common.enums.DataScopeTypeEnum;

import java.lang.annotation.*;

/**
 * 数据权限注解
 *
 * @author admin
 */
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
public @interface DataScope {

  /**
   * 是否是档案数据过滤
   *
   * @return
   */
  DataScopeTypeEnum type() default DataScopeTypeEnum.ALL;

  /**
   * 表别名
   *
   * @return
   */
  String tableAlias() default "t";

  /**
   * 用户字段名
   *
   * @return
   */
  String userColumnName() default "create_by";

  /**
   * 部门字段名
   *
   * @return
   */
  String deptColumnName() default "department_id";

  /**
   * 全宗字段
   *
   * @return
   */
  String fondsColumnName() default "fonds_id";
}
